#include <iostream>
#include<string>

using namespace std;

//int main()
//{
//	/*char c = '9';
//	cout <<c-'0' << endl;*/
//
//	string a = "hello world";
//
//	string b = a;
//
//	if (a.c_str() == b.c_str())
//
//	{
//
//		cout << "true" << endl;
//
//	}
//}
//
//
//int main(int argc, char* argv[])
//
//{
//
//	string strText = "How are you?";
//
//	string strSeparator = " ";
//
//	string strResult;
//
//	int size_pos = 0;
//
//	int size_prev_pos = 0;
//
//	while ((size_pos = strText.find_first_of(strSeparator, size_pos)) != string::npos)
//
//	{
//
//		strResult = strText.substr(size_prev_pos, size_pos - size_prev_pos);
//
//		cout << strResult << " ";
//
//		size_prev_pos = ++size_pos;
//
//	}
//
//	if (size_prev_pos != strText.size())
//
//	{
//
//		strResult = strText.substr(size_prev_pos, size_pos - size_prev_pos);
//
//		cout << strResult << " ";
//
//	}
//
//	cout << endl;
//
//	return 0;
//
//}




//int main() {
//    string str;
//    cin >> str;
//
//    int end = str.size() - 1;
//    while (str[end] != ' ' && end > 0)
//    {
//        end--;
//    }
//
//    cout<<str.size() - 1 - end;
//}

//int main() {
//    string str;
//    //cin>>str;
//
//    char c[100];
//    gets(c);
//    str = c;
//
//
//    int end = str.size() - 1;
//    while (str[end] != ' ' && end > 0)
//    {
//        end--;
//    }
//
//    cout << str.size() - 1 - end;
//    return 0;
//}


#include <iostream>
#include<string>
using namespace std;

//int main() {
   /* string str;
    getline(cin, str);

    int end = str.size() - 1;
    while (str[end] != ' ' && end >= 0)
    {
        end--;
    }

    cout << str.size() - 1 - end;
    return 0;*/


//    string c = "abcdefghnnn";
//    reverse(c.begin()+1, c.end());
//    cout << c;
//}





//int main()
//{
//    //string s;
//    //getline(cin, s);
//    //int front = 0;
//    //int back = front;
//    //int cur = 0;
//    //int len = s.size();
//
//
//
//
//    //for (int i = 0; i < len; i++)
//    //{
//    //    if (s[i] == ' ')
//    //    {
//    //        reverse(s.begin() + front, s.begin());
//    //    }
//    //}
//
//
//    //int endi = len - 1;
//    //int j = 0;
//    //while (s[endi] != ' ' && endi > 0)
//    //{
//    //    endi--;
//    //    j++;
//    //}
//
//
//    //reverse(s.end() - j, s.end());
//    //cout << s;
//
//
//    string s = "hehhhhhhe";
//    reverse(s.end() - 8, s.end());
//    cout << s;
//   
//}



//class Solution {
//public:
//    string reverseWords(string s) {
//        int front = 0;
//        int len = s.size();
//        int NullNum = 0;
//        for (int i = 0; i < len; i++)
//        {
//            if (s[i] == ' ')
//            {
//                reverse(s.begin() + front, s.begin() + i);
//                front = i + 1;
//                NullNum++;
//            }
//        }
//
//        int endi = len - 1;
//        int j = 0;
//        while (s[endi] != ' ' && endi > 0)
//        {
//            endi--;
//            j++;
//        }
//        if (NullNum != 0)
//        {
//            reverse(s.end() - j, s.end());
//        }
//        else
//        {
//            reverse(s.end() - j - 1, s.end());
//
//        }
//        cout << s;
//        return s;
//    }
//};




//string addStrings(string num1, string num2) {
//    int end1 = num1.size() - 1;
//    int end2 = num2.size() - 1;
//    int carry = 0;
//
//    string retstr;
//
//    while (end1 >= 0 || end2 >= 0)
//    {
//        int val1 = end1 >= 0 ? num1[end1] - '0' : 0;
//        int val2 = end2 >= 0 ? num2[end2] - '0' : 0;
//
//        int ret = val1 + val2 + carry;
//        carry = ret / 10;
//        retstr += (ret % 10 + '0');
//        end1--;
//        end2--;
//    }
//
//    if (carry == 1)
//    {
//        retstr += '1';
//    }
//
//    reverse(retstr.begin(), retstr.end());
//    cout << retstr;
//    return retstr;
//}